// @Date         2021-11-09
// @Author       Aaron Zhang
// @Description
// @FileName      demo.go

package user

import (
	"context"
	"zin/app/http/api_error"
	"zin/app/http/common"
	"zin/app/http/module/user/params"
	"zin/framework/gin"
	"zin/framework/util"
)

// CreateUser godoc
// @Summary 创建用户
// @Tags 用户管理
// @Produce  json
// @Param object body params.CreateUserData false "参数"
// @Success 200 object {}
// @Router /v1/user [POST]
func CreateUser(c *gin.Context) {
	var data params.CreateUserData
	if common.ShouldBindJson(c, &data, params.NewUserFieldMap()) {
		c.JsonOkInterface(api_error.ResponseSuccess)
	}
}

// GetUserInfo godoc
// @Summary 获取用户详情
// @Tags 用户管理
// @Produce  json
// @Success 200 object params.GetUserInfoResult
// @Router /v1/user/:id [get]
func GetUserInfo(c *gin.Context) {
	user := &User{}
	util.GetOrmProvider().GetDb().Where("id=?", 5).Find(user)
	util.GetCacheProvider().SetObj(context.Background(), "user:5", user, 0)
	c.JsonOK(map[string]interface{}{
		"user": user,
	})
}
